// 蜂窝蜜造平台生成代码，如手工更改，请添加到 .beeignore 忽略生成

package com.fowo.api.model.platformshippinglogistics;

import com.fowo.api.common.annotaion.DataObjectType;
import com.fowo.api.common.meta.MetaDataObject;
import com.fowo.api.common.meta.MetaDataObjects;
import com.fowo.api.common.model.PageSearch;
import com.fowo.api.common.mybatis.helper.PageSearchHelper;
import com.fowo.api.common.util.ListUtils;
import com.fowo.api.entity.Platformshippinglogistics;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import lombok.Getter;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;

@DataObjectType(Platformshippinglogistics.class)
@Setter
@Getter
public class PlatformshippinglogisticsSearchParamPo extends PageSearch {

  private static MetaDataObject metaDataObject;

  @Override
  public void applySqlSegments() {
    if (metaDataObject == null) {
      metaDataObject =
        ListUtils.find(
          MetaDataObjects.getObjects(),
          o -> "Platformshippinglogistics".equals(o.getName())
        );
    }
    PageSearchHelper.fillSqlSegments(this, metaDataObject);
  }

  @Override
  public void initFinal() {
    super.initFinal();
    applySqlSegments();
  }

  /**
   * 获取关联字段的查询表别名信息
   */
  @Override
  public Map<String, String> getJoinFieldTableAliasMap() {
    Map<String, String> map = new HashMap<>();
    map.put("parentPlatformshipping", "p");
    return map;
  }

  @Override
  public Map<String, OptionalJoinField> getOptionalJoinFields() {
    Map<String, OptionalJoinField> map = new HashMap<>();

    return map;
  }

  /**
   * 所属平台仓发货单
   */
  private Long parentPlatformshipping;

  /**
   * 所属平台仓发货单 比较(eq)
   */
  private Long parentPlatformshippingEq;
  /**
   * 所属平台仓发货单 比较(neq)
   */
  private Long parentPlatformshippingNeq;
  /**
   * 所属平台仓发货单 比较(gt)
   */
  private Long parentPlatformshippingGt;
  /**
   * 所属平台仓发货单 比较(gte)
   */
  private Long parentPlatformshippingGte;
  /**
   * 所属平台仓发货单 比较(lt)
   */
  private Long parentPlatformshippingLt;
  /**
   * 所属平台仓发货单 比较(lte)
   */
  private Long parentPlatformshippingLte;
  /**
   * 所属平台仓发货单 比较(contains)
   */
  private Long parentPlatformshippingContains;
  /**
   * 所属平台仓发货单 比较(notcontains)
   */
  private Long parentPlatformshippingNotcontains;
  /**
   * 所属平台仓发货单 比较(startswith)
   */
  private Long parentPlatformshippingStartswith;
  /**
   * 所属平台仓发货单 比较(endswith)
   */
  private Long parentPlatformshippingEndswith;
  /**
   * 所属平台仓发货单 比较(isnull)
   */
  private Boolean parentPlatformshippingIsnull;
  /**
   * 所属平台仓发货单 比较(isnotnull)
   */
  private Boolean parentPlatformshippingIsnotnull;
  /**
   * 所属平台仓发货单的发货单号 比较(eq)
   */
  private String parentPlatformshippingShipmentCodeEq;
  /**
   * 所属平台仓发货单的发货单号 比较(neq)
   */
  private String parentPlatformshippingShipmentCodeNeq;
  /**
   * 所属平台仓发货单的发货单号 比较(gt)
   */
  private String parentPlatformshippingShipmentCodeGt;
  /**
   * 所属平台仓发货单的发货单号 比较(gte)
   */
  private String parentPlatformshippingShipmentCodeGte;
  /**
   * 所属平台仓发货单的发货单号 比较(lt)
   */
  private String parentPlatformshippingShipmentCodeLt;
  /**
   * 所属平台仓发货单的发货单号 比较(lte)
   */
  private String parentPlatformshippingShipmentCodeLte;
  /**
   * 所属平台仓发货单的发货单号 比较(contains)
   */
  private String parentPlatformshippingShipmentCodeContains;
  /**
   * 所属平台仓发货单的发货单号 比较(notcontains)
   */
  private String parentPlatformshippingShipmentCodeNotcontains;
  /**
   * 所属平台仓发货单的发货单号 比较(startswith)
   */
  private String parentPlatformshippingShipmentCodeStartswith;
  /**
   * 所属平台仓发货单的发货单号 比较(endswith)
   */
  private String parentPlatformshippingShipmentCodeEndswith;
  /**
   * 所属平台仓发货单的发货单号 比较(isnull)
   */
  private Boolean parentPlatformshippingShipmentCodeIsnull;
  /**
   * 所属平台仓发货单的发货单号 比较(isnotnull)
   */
  private Boolean parentPlatformshippingShipmentCodeIsnotnull;

  /**
   * 所属平台仓发货单(范围搜索)
   */
  private List<Long> parentPlatformshippingInList;

  /**
   * 编号
   */
  private Long id;

  /**
   * 最小编号
   */
  private Long idMin;

  /**
   * 最大编号
   */
  private Long idMax;

  /**
   * 编号 比较(eq)
   */
  private Long idEq;
  /**
   * 编号 比较(neq)
   */
  private Long idNeq;
  /**
   * 编号 比较(gt)
   */
  private Long idGt;
  /**
   * 编号 比较(gte)
   */
  private Long idGte;
  /**
   * 编号 比较(lt)
   */
  private Long idLt;
  /**
   * 编号 比较(lte)
   */
  private Long idLte;
  /**
   * 编号 比较(contains)
   */
  private Long idContains;
  /**
   * 编号 比较(notcontains)
   */
  private Long idNotcontains;
  /**
   * 编号 比较(startswith)
   */
  private Long idStartswith;
  /**
   * 编号 比较(endswith)
   */
  private Long idEndswith;
  /**
   * 编号 比较(isnull)
   */
  private Boolean idIsnull;
  /**
   * 编号 比较(isnotnull)
   */
  private Boolean idIsnotnull;

  /**
   * 物流商单号(模糊搜索)
   */
  private String logisticsCode;

  /**
   * 物流商单号 比较(eq)
   */
  private String logisticsCodeEq;
  /**
   * 物流商单号 比较(neq)
   */
  private String logisticsCodeNeq;
  /**
   * 物流商单号 比较(gt)
   */
  private String logisticsCodeGt;
  /**
   * 物流商单号 比较(gte)
   */
  private String logisticsCodeGte;
  /**
   * 物流商单号 比较(lt)
   */
  private String logisticsCodeLt;
  /**
   * 物流商单号 比较(lte)
   */
  private String logisticsCodeLte;
  /**
   * 物流商单号 比较(contains)
   */
  private String logisticsCodeContains;
  /**
   * 物流商单号 比较(notcontains)
   */
  private String logisticsCodeNotcontains;
  /**
   * 物流商单号 比较(startswith)
   */
  private String logisticsCodeStartswith;
  /**
   * 物流商单号 比较(endswith)
   */
  private String logisticsCodeEndswith;
  /**
   * 物流商单号 比较(isnull)
   */
  private Boolean logisticsCodeIsnull;
  /**
   * 物流商单号 比较(isnotnull)
   */
  private Boolean logisticsCodeIsnotnull;

  /**
   * 物流商单号(精确搜索)
   */
  private List<String> logisticsCodeInList;

  /**
   * 跟踪号(模糊搜索)
   */
  private String trackingCode;

  /**
   * 跟踪号 比较(eq)
   */
  private String trackingCodeEq;
  /**
   * 跟踪号 比较(neq)
   */
  private String trackingCodeNeq;
  /**
   * 跟踪号 比较(gt)
   */
  private String trackingCodeGt;
  /**
   * 跟踪号 比较(gte)
   */
  private String trackingCodeGte;
  /**
   * 跟踪号 比较(lt)
   */
  private String trackingCodeLt;
  /**
   * 跟踪号 比较(lte)
   */
  private String trackingCodeLte;
  /**
   * 跟踪号 比较(contains)
   */
  private String trackingCodeContains;
  /**
   * 跟踪号 比较(notcontains)
   */
  private String trackingCodeNotcontains;
  /**
   * 跟踪号 比较(startswith)
   */
  private String trackingCodeStartswith;
  /**
   * 跟踪号 比较(endswith)
   */
  private String trackingCodeEndswith;
  /**
   * 跟踪号 比较(isnull)
   */
  private Boolean trackingCodeIsnull;
  /**
   * 跟踪号 比较(isnotnull)
   */
  private Boolean trackingCodeIsnotnull;

  /**
   * 跟踪号(精确搜索)
   */
  private List<String> trackingCodeInList;

  /**
   * 物流费用
   */
  private java.math.BigDecimal logisticsPrice;

  /**
   * 最小物流费用
   */
  private java.math.BigDecimal logisticsPriceMin;

  /**
   * 最大物流费用
   */
  private java.math.BigDecimal logisticsPriceMax;

  /**
   * 物流费用 比较(eq)
   */
  private java.math.BigDecimal logisticsPriceEq;
  /**
   * 物流费用 比较(neq)
   */
  private java.math.BigDecimal logisticsPriceNeq;
  /**
   * 物流费用 比较(gt)
   */
  private java.math.BigDecimal logisticsPriceGt;
  /**
   * 物流费用 比较(gte)
   */
  private java.math.BigDecimal logisticsPriceGte;
  /**
   * 物流费用 比较(lt)
   */
  private java.math.BigDecimal logisticsPriceLt;
  /**
   * 物流费用 比较(lte)
   */
  private java.math.BigDecimal logisticsPriceLte;
  /**
   * 物流费用 比较(contains)
   */
  private java.math.BigDecimal logisticsPriceContains;
  /**
   * 物流费用 比较(notcontains)
   */
  private java.math.BigDecimal logisticsPriceNotcontains;
  /**
   * 物流费用 比较(startswith)
   */
  private java.math.BigDecimal logisticsPriceStartswith;
  /**
   * 物流费用 比较(endswith)
   */
  private java.math.BigDecimal logisticsPriceEndswith;
  /**
   * 物流费用 比较(isnull)
   */
  private Boolean logisticsPriceIsnull;
  /**
   * 物流费用 比较(isnotnull)
   */
  private Boolean logisticsPriceIsnotnull;

  /**
   * 最早创建时间
   */
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  private Date createTimeStart;

  /**
   * 最晚创建时间
   */
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  private Date createTimeEnd;

  /**
   * 创建时间 比较(eq)
   */
  private Date createTimeEq;
  /**
   * 创建时间 比较(neq)
   */
  private Date createTimeNeq;
  /**
   * 创建时间 比较(gt)
   */
  private Date createTimeGt;
  /**
   * 创建时间 比较(gte)
   */
  private Date createTimeGte;
  /**
   * 创建时间 比较(lt)
   */
  private Date createTimeLt;
  /**
   * 创建时间 比较(lte)
   */
  private Date createTimeLte;
  /**
   * 创建时间 比较(contains)
   */
  private Date createTimeContains;
  /**
   * 创建时间 比较(notcontains)
   */
  private Date createTimeNotcontains;
  /**
   * 创建时间 比较(startswith)
   */
  private Date createTimeStartswith;
  /**
   * 创建时间 比较(endswith)
   */
  private Date createTimeEndswith;
  /**
   * 创建时间 比较(isnull)
   */
  private Boolean createTimeIsnull;
  /**
   * 创建时间 比较(isnotnull)
   */
  private Boolean createTimeIsnotnull;

  /**
   * 创建人
   */
  private Long createUser;

  /**
   * 最小创建人
   */
  private Long createUserMin;

  /**
   * 最大创建人
   */
  private Long createUserMax;

  /**
   * 创建人 比较(eq)
   */
  private Long createUserEq;
  /**
   * 创建人 比较(neq)
   */
  private Long createUserNeq;
  /**
   * 创建人 比较(gt)
   */
  private Long createUserGt;
  /**
   * 创建人 比较(gte)
   */
  private Long createUserGte;
  /**
   * 创建人 比较(lt)
   */
  private Long createUserLt;
  /**
   * 创建人 比较(lte)
   */
  private Long createUserLte;
  /**
   * 创建人 比较(contains)
   */
  private Long createUserContains;
  /**
   * 创建人 比较(notcontains)
   */
  private Long createUserNotcontains;
  /**
   * 创建人 比较(startswith)
   */
  private Long createUserStartswith;
  /**
   * 创建人 比较(endswith)
   */
  private Long createUserEndswith;
  /**
   * 创建人 比较(isnull)
   */
  private Boolean createUserIsnull;
  /**
   * 创建人 比较(isnotnull)
   */
  private Boolean createUserIsnotnull;

  /**
   * 最早更新时间
   */
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  private Date lastUpdateTimeStart;

  /**
   * 最晚更新时间
   */
  @DateTimeFormat(pattern = "yyyy-MM-dd")
  private Date lastUpdateTimeEnd;

  /**
   * 更新时间 比较(eq)
   */
  private Date lastUpdateTimeEq;
  /**
   * 更新时间 比较(neq)
   */
  private Date lastUpdateTimeNeq;
  /**
   * 更新时间 比较(gt)
   */
  private Date lastUpdateTimeGt;
  /**
   * 更新时间 比较(gte)
   */
  private Date lastUpdateTimeGte;
  /**
   * 更新时间 比较(lt)
   */
  private Date lastUpdateTimeLt;
  /**
   * 更新时间 比较(lte)
   */
  private Date lastUpdateTimeLte;
  /**
   * 更新时间 比较(contains)
   */
  private Date lastUpdateTimeContains;
  /**
   * 更新时间 比较(notcontains)
   */
  private Date lastUpdateTimeNotcontains;
  /**
   * 更新时间 比较(startswith)
   */
  private Date lastUpdateTimeStartswith;
  /**
   * 更新时间 比较(endswith)
   */
  private Date lastUpdateTimeEndswith;
  /**
   * 更新时间 比较(isnull)
   */
  private Boolean lastUpdateTimeIsnull;
  /**
   * 更新时间 比较(isnotnull)
   */
  private Boolean lastUpdateTimeIsnotnull;

  /**
   * 更新人
   */
  private Long lastUpdateUser;

  /**
   * 最小更新人
   */
  private Long lastUpdateUserMin;

  /**
   * 最大更新人
   */
  private Long lastUpdateUserMax;

  /**
   * 更新人 比较(eq)
   */
  private Long lastUpdateUserEq;
  /**
   * 更新人 比较(neq)
   */
  private Long lastUpdateUserNeq;
  /**
   * 更新人 比较(gt)
   */
  private Long lastUpdateUserGt;
  /**
   * 更新人 比较(gte)
   */
  private Long lastUpdateUserGte;
  /**
   * 更新人 比较(lt)
   */
  private Long lastUpdateUserLt;
  /**
   * 更新人 比较(lte)
   */
  private Long lastUpdateUserLte;
  /**
   * 更新人 比较(contains)
   */
  private Long lastUpdateUserContains;
  /**
   * 更新人 比较(notcontains)
   */
  private Long lastUpdateUserNotcontains;
  /**
   * 更新人 比较(startswith)
   */
  private Long lastUpdateUserStartswith;
  /**
   * 更新人 比较(endswith)
   */
  private Long lastUpdateUserEndswith;
  /**
   * 更新人 比较(isnull)
   */
  private Boolean lastUpdateUserIsnull;
  /**
   * 更新人 比较(isnotnull)
   */
  private Boolean lastUpdateUserIsnotnull;

  /**
   * 其他费用
   */
  private java.math.BigDecimal othPrice;

  /**
   * 最小其他费用
   */
  private java.math.BigDecimal othPriceMin;

  /**
   * 最大其他费用
   */
  private java.math.BigDecimal othPriceMax;

  /**
   * 其他费用 比较(eq)
   */
  private java.math.BigDecimal othPriceEq;
  /**
   * 其他费用 比较(neq)
   */
  private java.math.BigDecimal othPriceNeq;
  /**
   * 其他费用 比较(gt)
   */
  private java.math.BigDecimal othPriceGt;
  /**
   * 其他费用 比较(gte)
   */
  private java.math.BigDecimal othPriceGte;
  /**
   * 其他费用 比较(lt)
   */
  private java.math.BigDecimal othPriceLt;
  /**
   * 其他费用 比较(lte)
   */
  private java.math.BigDecimal othPriceLte;
  /**
   * 其他费用 比较(contains)
   */
  private java.math.BigDecimal othPriceContains;
  /**
   * 其他费用 比较(notcontains)
   */
  private java.math.BigDecimal othPriceNotcontains;
  /**
   * 其他费用 比较(startswith)
   */
  private java.math.BigDecimal othPriceStartswith;
  /**
   * 其他费用 比较(endswith)
   */
  private java.math.BigDecimal othPriceEndswith;
  /**
   * 其他费用 比较(isnull)
   */
  private Boolean othPriceIsnull;
  /**
   * 其他费用 比较(isnotnull)
   */
  private Boolean othPriceIsnotnull;

  /**
   * 实际物流费用
   */
  private java.math.BigDecimal realityLogisticsPrice;

  /**
   * 最小实际物流费用
   */
  private java.math.BigDecimal realityLogisticsPriceMin;

  /**
   * 最大实际物流费用
   */
  private java.math.BigDecimal realityLogisticsPriceMax;

  /**
   * 实际物流费用 比较(eq)
   */
  private java.math.BigDecimal realityLogisticsPriceEq;
  /**
   * 实际物流费用 比较(neq)
   */
  private java.math.BigDecimal realityLogisticsPriceNeq;
  /**
   * 实际物流费用 比较(gt)
   */
  private java.math.BigDecimal realityLogisticsPriceGt;
  /**
   * 实际物流费用 比较(gte)
   */
  private java.math.BigDecimal realityLogisticsPriceGte;
  /**
   * 实际物流费用 比较(lt)
   */
  private java.math.BigDecimal realityLogisticsPriceLt;
  /**
   * 实际物流费用 比较(lte)
   */
  private java.math.BigDecimal realityLogisticsPriceLte;
  /**
   * 实际物流费用 比较(contains)
   */
  private java.math.BigDecimal realityLogisticsPriceContains;
  /**
   * 实际物流费用 比较(notcontains)
   */
  private java.math.BigDecimal realityLogisticsPriceNotcontains;
  /**
   * 实际物流费用 比较(startswith)
   */
  private java.math.BigDecimal realityLogisticsPriceStartswith;
  /**
   * 实际物流费用 比较(endswith)
   */
  private java.math.BigDecimal realityLogisticsPriceEndswith;
  /**
   * 实际物流费用 比较(isnull)
   */
  private Boolean realityLogisticsPriceIsnull;
  /**
   * 实际物流费用 比较(isnotnull)
   */
  private Boolean realityLogisticsPriceIsnotnull;

  /**
   * 实际其他费用
   */
  private java.math.BigDecimal realityOthPrice;

  /**
   * 最小实际其他费用
   */
  private java.math.BigDecimal realityOthPriceMin;

  /**
   * 最大实际其他费用
   */
  private java.math.BigDecimal realityOthPriceMax;

  /**
   * 实际其他费用 比较(eq)
   */
  private java.math.BigDecimal realityOthPriceEq;
  /**
   * 实际其他费用 比较(neq)
   */
  private java.math.BigDecimal realityOthPriceNeq;
  /**
   * 实际其他费用 比较(gt)
   */
  private java.math.BigDecimal realityOthPriceGt;
  /**
   * 实际其他费用 比较(gte)
   */
  private java.math.BigDecimal realityOthPriceGte;
  /**
   * 实际其他费用 比较(lt)
   */
  private java.math.BigDecimal realityOthPriceLt;
  /**
   * 实际其他费用 比较(lte)
   */
  private java.math.BigDecimal realityOthPriceLte;
  /**
   * 实际其他费用 比较(contains)
   */
  private java.math.BigDecimal realityOthPriceContains;
  /**
   * 实际其他费用 比较(notcontains)
   */
  private java.math.BigDecimal realityOthPriceNotcontains;
  /**
   * 实际其他费用 比较(startswith)
   */
  private java.math.BigDecimal realityOthPriceStartswith;
  /**
   * 实际其他费用 比较(endswith)
   */
  private java.math.BigDecimal realityOthPriceEndswith;
  /**
   * 实际其他费用 比较(isnull)
   */
  private Boolean realityOthPriceIsnull;
  /**
   * 实际其他费用 比较(isnotnull)
   */
  private Boolean realityOthPriceIsnotnull;

  /**
   * 其他费用备注(模糊搜索)
   */
  private String remarks;

  /**
   * 其他费用备注 比较(eq)
   */
  private String remarksEq;
  /**
   * 其他费用备注 比较(neq)
   */
  private String remarksNeq;
  /**
   * 其他费用备注 比较(gt)
   */
  private String remarksGt;
  /**
   * 其他费用备注 比较(gte)
   */
  private String remarksGte;
  /**
   * 其他费用备注 比较(lt)
   */
  private String remarksLt;
  /**
   * 其他费用备注 比较(lte)
   */
  private String remarksLte;
  /**
   * 其他费用备注 比较(contains)
   */
  private String remarksContains;
  /**
   * 其他费用备注 比较(notcontains)
   */
  private String remarksNotcontains;
  /**
   * 其他费用备注 比较(startswith)
   */
  private String remarksStartswith;
  /**
   * 其他费用备注 比较(endswith)
   */
  private String remarksEndswith;
  /**
   * 其他费用备注 比较(isnull)
   */
  private Boolean remarksIsnull;
  /**
   * 其他费用备注 比较(isnotnull)
   */
  private Boolean remarksIsnotnull;

  /**
   * 其他费用备注(精确搜索)
   */
  private List<String> remarksInList;

  /**
   * 表单名称
   */
  private String formName;

  /**
   * 工作流状态
   */
  private Integer wfStatus;
}
